package cn.monkey.family.server.domain.shop.item.comment;

import cn.monkey.family.data.Result;
import cn.monkey.family.data.context.RequestContext;
import cn.monkey.family.data.crud.CrudService;
import cn.monkey.family.data.shop.item.comment.CommentDto;
import cn.monkey.family.data.shop.item.comment.CommentQueryRequest;
import cn.monkey.family.data.shop.item.comment.CommentVo;
import org.springframework.data.domain.Sort;

import java.util.Collection;

public interface ICommentService extends CrudService<String, CommentQueryRequest, CommentDto, CommentVo> {

    Result<Collection<CommentVo>> readTree(RequestContext requestContext,
                                           CommentQueryRequest queryRequest,
                                           Sort sort,
                                           Integer maxDeep);

    Result<Collection<CommentVo>> readRoot(RequestContext context, CommentQueryRequest queryRequest, Sort sort);
}
